草庐IT

Android isScreenOn Nullpointer异常

全部标签

php - 禁止为 E_USER_WARNING 抛出异常

当我这样做时,Laravel返回500:trigger_error("Somemessage",E_USER_WARNING);我需要它不出错,但我确实希望它通过\App\Exceptions\Handler::report运行将警告记录到Sentry。如何禁用Laravel5.2将警告和错误转换为异常? 最佳答案 您可以编辑laravel的错误处理程序以仅在HandleExceptions.php中报告警告publicfunctionhandleError($level,$message,$file='',$line=0,$con

php - PHP 函数的返回值和异常

我正在阅读一些关于PHP的书籍(特别是Welling和Thomson合着的“PHP和MySQLWeb开发”),我也是一名应届本科生。我有点好奇为什么作者决定选择两种不同的方式来终止函数的执行,例如if(!$result){thrownewException('Passwordcouldnotbechanged.');}else{returntrue;}对我来说,这似乎有点不一致,返回false并让调用者检查被调用者的返回值并进行处理会更有意义。PHP代码是不是经常这样?这是使用异常时预期的样式类型吗? 最佳答案 是的,我同意这没有多

php - 我应该抛出不同的异常类型吗?

当故意抛出异常时,我总是只使用PHP的基本异常类,只是使用不同的消息,例如:$b){thrownewException('aislargerthanb');}但是,最近我注意到有些人会抛出不同类别的异常,例如:$b){thrownewaIsLargerThanBException();}这两种方法的优点/缺点是什么?我应该用第二种风格吗?我注意到,在使用PHPUnit进行单元测试时,您可以使用setExpectedException()告诉它您期望出现某一类异常。这是否意味着第二种方法在使代码可测试方面更好?谢谢! 最佳答案 这些不

php - 未捕获的异常 'ImagickException',消息为 'Unable to read the file'

我正在运行带有imagick模块3.1.0RC2的PHP5.4.30。phpinfo()确实将模块显示为已加载,而phpinfo()将PDF显示为受支持的格式。运行时:$image=newImagick();$image->readImage('./test.pdf');我收到:fatalerror:未捕获的异常“ImagickException”和消息“无法读取文件:./test.pdf”当我将图像类型更改为JPEG并读取'./test.jpg'时,未返回任何错误。已检查权限并测试了不同的PDF。我已经插入了图像的绝对路径,但仍然抛出异常。此示例的图像与脚本放在同一目录中。我错过了什

php - 异常处理程序中的 Laravel 错误

我已经安装了laravel4,当我转到以下URL时:http://localhost/laravel/public/我得到了这个错误:Errorinexceptionhandler.到目前为止,我已经按照本主题中的说明进行了尝试Errorinexceptionhandler.-Laravel但它帮不了我。有什么想法吗? 最佳答案 Laravel需要将一些文件写入app/storage文件夹,所以给app/storage写入权限chmod777一些建议如下url或使用chownwww-data:www-data-Rapp/storag

php - 哪些 PDO 方法抛出异常?

当建立一个新的PDO数据库处理程序时,我必须将所有内容包装到一个try-catch中以防止出现将所有数据库访问数据打印给用户的错误消息。但是,例如exec()等所有其他方法呢?我必须将所有这些都包装到一个try-catchblock中吗?PHP文档在什么时候告诉方法抛出异常? 最佳答案 首先,您可以设置PDO如何处理错误,使用PDO::setAttribute方法,设置PDO::ATTR_ERRMODE(错误报告)选项。特别是,可以配置PDO,使其在出现错误时抛出异常,而不是报告“错误”——这就是我通常所做的。然后,当一个方法可以抛

php类异常处理问题

有一个针对我正在做的工作申请的开卷测验,它显然突出了我php知识的一个缺点。请注意,我不是直接要求答案,而是要求向大家展示我在如何回答问题方面存在误解/缺乏的地方。问题是:3.Finishthefollowingclasstoprint"Person->namehasbeenzapped"whenthefollowingisexecutedonaPersonobject:print$person;classPerson{private$name='';publicfunction__construct($name){$this->name=$name;}}$person=newPers

php - PHP 中的错误处理,死亡与异常

这个问题在这里已经有了答案:PHPErrorhandling:die()Vstrigger_error()VsthrowException(2个答案)关闭13天前。例如,我的用法是:$check='no';if($check=='yes'){//dostuff}else{die('Errorfound');}我看到许多开发人员使用的是:if($check=='yes'){//dostuff}else{thrownewException('Errorfound.');}哪种方法“更好”?抛出异常而不是停止执行脚本有什么好处吗?

php - 将 PHP 错误转换为异常

我编写了错误处理类,它将所有错误分为正常错误(通知、警告...)和严重错误。现在我发现将所有错误转换为异常是一种很好的做法。它还会缩短我的代码。但是,我不确定如何处理这个...是否存在不停止脚本执行的异常和会停止脚本执行的异常?如果没有...如何区分转换后的错误?将错误转换为异常是通过调用set_error_handler()并在其中抛出新的ErrorException()来完成的...下一步是什么?set_exception_handler()被自动调用? 最佳答案 捕获的异常不会停止您的脚本,所有未捕获的异常都会。不,set_e

php - __toString() 在使用字符串时不得抛出异常错误

我正在为我正在进行的项目使用Laravel4。我需要从帖子中检索第一条评论。我使用以下代码来这样做。$comments=Comment::where('post_id',$post->id)->first();这成功地检索了第一条评论(我知道这是因为我用print_r编辑了$comments并且它返回了所有正确的信息)。然而,下面这行代码触发了错误__toString()mustnotthrowanexception{{$comments->content}}当我print_r-ed时,它返回了字符串类型,并且也返回了正确的字符串。为什么它甚至会尝试将$comments->conten